package com.ocom.payconfig.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ocom.common.entity.payconfig.FeeItem;
import com.ocom.common.resp.Result;
import com.ocom.common.vo.payconfig.FeeItemListVo;
import com.ocom.common.vo.payconfig.FeeItemXMVo;
import icu.mhb.mybatisplus.plugln.base.service.JoinIService;

import java.util.List;

/**
 * <p>
 * 缴费项目 服务类
 * </p>
 *
 * @author junShu
 * @since 2023-08-18
 */
public interface FeeItemService extends JoinIService<FeeItem> {
    Result feeItemList(Long comId,FeeItemListVo request);
    boolean existName(Long comId,String strName);
    FeeItem getByStatus(Long comId, int feeItemId);
    Result addSave(Long comId, FeeItem request);

    Result editSave(Long comId, FeeItem feeItem);
    Result startFeeItem(Long comId, FeeItem feeItem);
    Result pauseFeeItem(Long comId, FeeItem feeItem);
    Result closeFeeItem(Long comId, FeeItem feeItem);

    Result feeItemListByWay(Long comId, FeeItemListVo request);

    FeeItem findByFeeDataId(Long comId, Integer feeDataId);

    Page<FeeItemXMVo> feeItemListXM(Long companyId, FeeItemListVo request);
    Result newFeeItemXM(Long companyId, FeeItemXMVo request);
    Result updateFeeItemXM(Long companyId, FeeItemXMVo feeItem);


    List<FeeItemXMVo> getItemListXM(Long companyId);

}
